package com.example.sword;

import java.util.HashMap;
import java.util.Map;

public class Test40 {

    public static void main(String[] args) {
        System.out.println("haha");
    }


//    异或  相同为0   不相同为1
    /**
     * 一个整型数组里除了两个数字之外，其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。
     */
    //num1,num2分别为长度为1的数组。传出参数
    //将num1[0],num2[0]设置为返回结果
    public void FindNumsAppearOnce(int[] array, int num1[], int num2[]) {

        HashMap<Integer, Integer> hashMap = new HashMap();
        for (int i = 0; i < array.length; i++) {
            if (hashMap.containsKey(array[i])){
                hashMap.put(array[i],1);
            }else {
                hashMap.put(array[i],0);
            }
        }

        num1[0] = 0;
        for (Map.Entry<Integer,Integer> entry:
             hashMap.entrySet()) {
            if (entry.getValue()==0){
                if (num1[0] == 0){
                    num1[0]=entry.getKey();
                }else {
                    num2[0] = entry.getKey();
                }
            }
        }

    }

    public void FindNumsAppearOnce2(int[] array, int num1[], int num2[]) {



    }

}
